rendernode: Different uniformity in border nodes
authorTimm Bäder <mail@baedert.org>
Mon, 21 Dec 2020 08:56:58 +0000 (09:56 +0100)
committerTimm Bäder <mail@baedert.org>
Mon, 21 Dec 2020 09:26:03 +0000 (10:26 +0100)
Means they are different and a diff is impossible.

gsk/gskrendernodeimpl.c

index c9ffdce4ceb2c34a2b8307016f0eb722ee6dff69..8606faf857c94da8f4ed31905b94ce7c249974e4 100644 (file)
@@ -1263,6 +1263,13 @@ gsk_border_node_diff (GskRenderNode  *node1,
       gdk_rgba_equal (&self1->border_color[0], &self2->border_color[0]))
     return;
 
+  /* Different uniformity -> diff impossible */
+  if (self1->uniform ^ self2->uniform)
+    {
+      gsk_render_node_diff_impossible (node1, node2, region);
+      return;
+    }
+
   if (self1->border_width[0] == self2->border_width[0] &&
       self1->border_width[1] == self2->border_width[1] &&
       self1->border_width[2] == self2->border_width[2] &&